﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using vensoft.Entities;
using vensoft.BussinesLogic;

namespace vensoft.Win32
{
    public partial class frmLogin : Form
    {
        IUsuarioBL usuarioBL;
        
        public frmLogin()
        {
            InitializeComponent();           
        }

        private void txtLogin_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                usuarioBL = new UsuarioBL();
                List<Usuario> Usuario = new List<Entities.Usuario>();
                Usuario = usuarioBL.ConsultarUsuario(txtUsuario.Text, txtPassword.Text);
                LogicaLogin(Usuario);

            }
        }

        public Int32 contador { get; set; }

        private void btnIngresar_Click(object sender, EventArgs e)
        {
            usuarioBL = new UsuarioBL();
            List<Usuario> Usuario = new List<Entities.Usuario>();
            Usuario = usuarioBL.ConsultarUsuario(txtUsuario.Text, txtPassword.Text);

            LogicaLogin(Usuario);
        }

        private void LogicaLogin(List<Usuario> Usuario)
        {
            if (Usuario.Count > 0)
            {
                MessageBox.Show("Bienvenido " + Usuario.ElementAt(0).Cargo + " " + Usuario.ElementAt(0).Nomb_Usuario);
                frmPrincipal princ = new frmPrincipal();
                princ.UsuarioActual = Usuario;
                princ.ShowDialog();
                if (princ.Estado == 1)
                {
                    txtUsuario.Text = null;
                    txtPassword.Text = null;
                }
                else
                {
                    this.Close();
                }

            }
            else
            {
                contador++;
                MessageBox.Show("¡Datos Incorrectos! - Intentos " + contador + "/3");
                if (contador == 3)
                {
                    Close();
                }
            }
        }

        private void btnSalir_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("¿Esta seguro que desea salir?", "ALERTA", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                Close();
            }
        }

        private void label3_Click(object sender, EventArgs e)
        {

        }

        private void label4_Click(object sender, EventArgs e)
        {

        }

        private void label5_Click(object sender, EventArgs e)
        {

        }

        private void txtPassword_TextChanged(object sender, EventArgs e)
        {

        }

        private void txtUsuario_TextChanged(object sender, EventArgs e)
        {

        }
    }
}
